<?php
class Transferencia
{
	private $valor=0;
	private $id=null;
	private $cambio=0;
	private static $_instance;
	private $transferenciaConcluida=false;
	public function loadTransferenciaFromDb()
	{
		global $DbSite;
		$sql='select * from site.transferencia where id='.$this->id.';';
		$result=$DbSite->getall($sql);
		$result=$result[0];
		//printArray($result);
		$_POST['OBJCTAC']=$result->conta;	//numero de conta
		$_POST['FraCorresponsal']=$result->correspondente; //ver no cambio
		$_POST['FraAgenciaPago']=$result->agencia;  //id da agencia
		$_POST['FraModoPago']=$result->modoDePagamento; //id do modo de pagamento
		$_POST['FraEnviado']=$result->valor;  // valor enviado
		$_POST['FraARecibir']=$result->valorAReceber; //valor no receptor
		$_POST['FraMonCobro']=$result->moedaEmissor; //moeda do emissor
		$_POST['FraMonDPago']=$result->moedaReceptor; //moeda de destino
		$_POST['OBJCTRC']=$result->receptor; //beneficiario
		$_POST['FraTasa']=$result->cambio;  //cambio
		$_POST['FraEntregue']=$result->valor; //valor entregue
		$_POST['FraOrigen0']=880; //A Origem é o site
		$_POST['FraOrigen1']=$result->modoDeCobranca; //Modo de Cobrança
		//Não alterar
		$_POST['OBJCTOR']=0;  //numero da remessa no tuga, não interessa para o site
		$_POST['FraProm']=0;  //promoções
		$_POST['FraTaxProm']=0;  //
		$_POST['FraConcepto']=1;
		$_POST['FraNotas']=0;  //observações
		$_POST['FraMensaje']=0; //mensagem para o receptor
		$_POST['FraTasaAgn']=0;
		$_POST['FraUrgente']=0;
		$_POST['FraCargo']=0;  //taxa
		$_POST['FraComisionCorr']=0;  //TODO....
		$_POST['FraComisionComercial']=0;
		$_POST['FraRetencion']=0;
		$_POST['FraComisionAgR']=0; //
		$_POST['FraComisionAg']=0; //comissao do agente
		$_POST['OBJCTCL']=1; //cliente id

	}
	public function getTransferenciaConcluida()
	{
		return $this->transferenciaConcluida;
	}
	function getTransferenciaId()
	{
		global $DbTuga;
		if(!is_null($this->id))
		{
			return $this->id;
		}
		/* inicio da transacao */
		$DbTuga->begin();
		$sql='select max(id) as id from site.transferencia;';
		$id=$DbTuga->getall($sql);
		$id=$id[0]->id;
		$sql='insert into site.transferencia(id,estado) values('.++$id.',-1);';
		$result=$DbTuga->query($sql);
		/* fim da transacao */
		if($result)
		{
			$DbTuga->commit();
		}
		else
		{
			/* todo incluir um ficheiro de erros com os dados introduzidos nos formularios */
			$DbTuga->rollback();
		}
		$this->id=$id;
		return $this->id;
	}
	public static function getInstance()
	{
		if(!(self::$_instance instanceof self))
		{
			self::$_instance=new self();
		}
		return self::$_instance;
	}
// Do not allow an explicit call of the constructor: $v = new Singleton();
	final private function __construct()
	{

	}
// Do not allow the clone operation: $x = clone $v;
	final private function __clone()
	{

	}
	function getId()
	{
		return $this->id;
	}
	function setId($id)
	{
		$this->id=$id;
		$this->getId();
	}
}